POV-Ray : Newsgroups : povray.binaries.images : Glowing Tube - 1 attachment : Re: Glowing Tube - 1 attachment Server Time
29 Apr 2024 18:56:10 EDT (-0400)
  Re: Glowing Tube - 1 attachment  
From: Gilles Tran
Date: 22 May 2003 14:19:58
Message: <3ecd14ce$1@news.povray.org>

3eccfd86$1@news.povray.org...
> This is a beautiful effect. Can someone tell me how the slope feature is
> working to create this? (I'll take the answer in Newusers if necessary).

Note: I didn't invent this technique, Kari Kivisalo did.
Slope at a given point uses the angle between the direction value and the
normal on the surface at that point In this case the direction value is the
camera_location->look_at vector. Points looking at the camera get a black
texture and points looking perpendicular at the camera (the ones on the
surface edge) get a blue one.
In fact the code I posted should be rewritten as follows to be more
consistent with the docs :
    texture {pigment {slope {cam_lookat-cam_location,0,0.6}
            color_map{[0 rgb 0][1 rgb z*2]}}
            finish {ambient 1}
    }

It's not a "true" aoi effect because a real one should use (I suppose) the
normal/camera->surface_point angle, not the normal/camera->look_at angle,
but the approximation works for artistic purpose. I could be mistaken
though.

> Also, slope doesn't seem to work with image_maps...

Hmm, slope works fine with image_maps. I guess that your problem is trying
to use a map_type 0 map on a very concave/convex object... map_type 0 image
maps only works well on relatively flat objects (such as terrains), whatever
the pattern. On other objects, the map needs to be a non-planar uv_map
(map_type 1 on a sphere etc., or uv_mapping) to get proper results.
In fact my most common use for the technique is to create for poser models
skin maps (uv) finishes having higher diffuse values at shallow angles.

> Are there other
> limitations to its use with various types of pigments or would that be the
> main one?

The main limitation is that it doesn't work with turbulence. A workaround
for this consists in putting slight variations of the slope map within a
pigment map controlled by a pigment pattern :
pigment{pigment_pattern{agate...}pigment_map{[0 slope...][0.5 slope...][1
slope...]}}

Slope isn't a easy pattern to figure out though.

G.


--

**********************
http://www.oyonale.com
**********************
- Graphic experiments
- POV-Ray and Poser computer images
- Posters


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.